package com.xuan.webfinally.service;

import com.xuan.webfinally.entity.BoWa;
import com.xuan.webfinally.entity.DeviceStatus;
import com.xuan.webfinally.entity.OnTimeData;
import com.xuan.webfinally.entity.Pax;
import com.xuan.webfinally.entity.leida;
import com.xuan.webfinally.entity.pax1;
import com.xuan.webfinally.entity.SlopeInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xuan.webfinally.entity.jiancegaikuang;
import com.xuan.webfinally.entity.lxshuju;
import com.xuan.webfinally.entity.pax2;
import com.xuan.webfinally.entity.pax4;
import com.xuan.webfinally.entity.pax5;
import com.xuan.webfinally.entity.pax6;
import com.xuan.webfinally.entity.sbtongji;
import com.xuan.webfinally.entity.vediosAlls;
import com.xuan.webfinally.entity.wurenji;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 边坡信息表 服务类
 * </p>
 *
 * @author gyuxuan
 * @since 2025-05-18
 */
public interface ISlopeInfoService extends IService<SlopeInfo> {


    List<SlopeInfo> getLatestSlopeInfo(int i);

    jiancegaikuang getMonitoringOverviews(String username,Long deptId);

    DeviceStatus getDeviceStatus(String username,Long deptId);

    Map<String, Object> getWarningInfo(String username,Long deptId);


    String getProvince();

    int getCdsl();

    String getSlopeNames();

    // 获取分页数据
    List<Map<String, Object>> getSlopeData(Integer page, Integer size, String xzqh, String projectName);
    
    // 获取状态统计
    Map<String, Integer> getStatusCount();
    
    // 获取总数
    Integer getTotalCount(String xzqh, String projectName);

    Double getTemperature();

    Double getHumidity();

    Double getRainfall();

    String getVedio(Long deptId);

    int countOnlineDevices();

    int countOfflineDevices();

    int getTotalCountDevice();

    List<OnTimeData>  getOnTimeData();
    

    Object getYjxmzssss();

    Object getYjcdzssssssssss();

    List<lxshuju> getLixianshuju();

    int getNormalCount();

    List<sbtongji> getSbtongji();

    List<vediosAlls> getVideosAll();

    List<wurenji> getPlane();

    List<String> getAIjcshexiangtou();

    List<Pax> getPaxs(String monitorId);

    List<pax1> getPax1(String deptId);

    List<List<pax2>> getPax2(Long deptId);

    List<List<pax4>> getPax4(Long deptId);

    List<List<pax5>> getPax5(Long deptId);

    List<List<pax6>> getPax6(Long deptId);

    List<leida> getLeida();

    List<BoWa> getBowa();

    List<wurenji> getWuRenJi();

    String getSensorCode(String monitorId,String deviceSn);
}
